package com.normal.zbase.impl.tools.utils;

import android.util.Log;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.TimeZone;

public class DateUtils {

    /**
     * 将时间字符串转时间戳
     * @param time 时间字符串
     * @return
     */
    public static long getTimeMillis(String time) {
        //日历
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        Date date = null;
        long timeMillis=0;
        try {
            date = simpleDateFormat.parse(time);
             timeMillis = date.getTime();
        } catch (ParseException e) {
            e.printStackTrace();
        }
        return timeMillis;

    }

    /**
     * 获取指定时区的时间
     * 新加坡标准时间-Asia/Singapore
     * 北美东部标准时间-America/New_York
     *
     * @param tempDisplayId 时区id
     * @param timeMillis    时间戳
     */
    public static void getDateTime(String tempDisplayId, long timeMillis) {
        //时区
        TimeZone timeZone = TimeZone.getTimeZone(tempDisplayId);
        String displayName = timeZone.getDisplayName();
        String displayId = timeZone.getID();

        //日历
        Calendar calendar = Calendar.getInstance(timeZone);
        calendar.setTimeInMillis(timeMillis);
        Date date = calendar.getTime();

        //指定时区日期字符串
        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//定义新的日期格式
        formatter.setCalendar(calendar);
        formatter.setTimeZone(timeZone);
        String dateString = formatter.format(date);

        Log.e("zxy", displayName + "  " + displayId + "  " + dateString);
    }
}
